home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 1 / Cream of the Crop 1.iso / PRINTER / PRNDI802.ARJ / PRINDIR.DOC < prev    next >
Text File  |  1992-03-25  |  39KB  |  859 lines

  1.  
  2.  
  3.  
  4.  
  5.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  6.  
  7.  
  8.                                     TABLE OF CONTENTS
  9.  
  10.           Introduction ............................................... page 2
  11.           Shareware Notice ........................................... page 2
  12.           Disclaimer ................................................. page 3
  13.  
  14.           I.   PRINDIR PROGRAM USE AND OPTIONS
  15.  
  16.                Installing PRINDIR .................................... page 3
  17.                Command Line Parameters................................ page 3
  18.                Order of Installation ................................. page 4
  19.                Releasing PRINDIR ..................................... page 5
  20.                PRINDIR Popup Parameter Menu .......................... page 5
  21.                Status Box ............................................ page 5
  22.                Redirected Device ..................................... page 6
  23.                Device Destination .................................... page 6
  24.                Redirection Files ..................................... page 6
  25.                Invisible Mode ........................................ page 7
  26.                The PRINDIR Byte Count Indicator ...................... page 7
  27.                Delete Current File ................................... page 7
  28.                Important Notes ....................................... page 8
  29.  
  30.           II.  PRINMOD PROGRAM USE AND OPTIONS
  31.  
  32.                Program Overview ...................................... page 8
  33.                Command Line Parameters ............................... page 8
  34.                Notes For Programmers ................................. page 9
  35.  
  36.           III. PRINKEY PROGRAM
  37.  
  38.                Program Usage ......................................... page 10
  39.  
  40.           IV.  PRINCOL PROGRAM
  41.  
  42.                Program Usage ......................................... page 11
  43.  
  44.           VI.  TECHNICAL SUPPORT
  45.  
  46.                Final Notes and Where to Get HELP! .................... page 11
  47.                Known Conflicts and Other Information.................. page 12
  48.                Site License Information .............................. page 12
  49.  
  50.  
  51.           PRINDIR Registration Form .................................. page 13
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  72.  
  73.  
  74.  
  75.           INTRODUCTION:
  76.  
  77.                Welcome to Version 8.02 of PRINDIR, the BEST printer redirection
  78.           program available!  PRINDIR is a TSR program that will allow you to
  79.           redirect the output of any standard COM or LPT port to any other COM
  80.           or LPT port, as well as to disk files and to the display.  In
  81.           addition, PRINDIR allows you to specify the full path and file name
  82.           for disk file redirection, thus it is possible to redirect to any file
  83.           or logical device.  The main program offers an easy to use Popup
  84.           Parameter Menu from which the user can quickly and easily set program
  85.           options.  PRINDIR can make use of expanded and extended memory on
  86.           systems so equipped, making its conventional memory footprint even
  87.           smaller.  PRINDIR also includes several small support utilities to
  88.           help you customize PRINDIR to meet your needs.  PRINDIR is fast,
  89.           intuitive, easy to use, and can be utilized to solve many different
  90.           types of problems.  Only your imagination will limit what you can do
  91.           with PRINDIR.
  92.  
  93.                PRINDIR is a Shareware program written by Michael A. Hotz of J.M.
  94.           Allen Creations, and is user supported through Shareware registration.
  95.           Technical support is provided via phone, email, U.S. mail, or any
  96.           other means possible.  Registered users are rewarded with very cheap
  97.           upgrades to any future version which is released after the version
  98.           they register.
  99.  
  100.           SHAREWARE NOTICE:
  101.  
  102.                The PRINDIR system, comprised of PRINDIR, PRINMOD PRINCOL, and
  103.           PRINKEY versions 8.02, this documentation, and any previous or later
  104.           versions of any of the above are all Copyright (c) 1989-1992 J.M.
  105.           Allen Creations.  All Rights Reserved by Michael A. Hotz.  This
  106.           program is NOT public domain, it is released using the Shareware
  107.           concept.  I invite you to use my software on a trial basis.  If after
  108.           30 days, you find that this is an indispensable addition to your
  109.           utility entourage, I ask that you pay for this program by sending a
  110.           $20.00 registration fee to the author by using the registration form
  111.           included on the last page of this manual.  You may also register by
  112.           phone using a valid VISA or MASTERCARD.  Registered users will be
  113.           allowed 25% upgrades on any future Shareware versions of PRINDIR.
  114.           Registration allows you to use PRINDIR on any number of computers at a
  115.           single location.  You are required to register a copy of PRINDIR for
  116.           each location where it will be used on one or more machines.
  117.  
  118.                Registered users are invited to upgrade to the latest version of
  119.           PRINDIR for only $5.00.  Registration assures you of 25 percent
  120.           upgrades for any future shareware versions of the program, unlimited
  121.           technical support, and you will have a clear conscience knowing you
  122.           have not stolen this software, but rather paid a very modest fee for
  123.           the continued legal use of PRINDIR.
  124.  
  125.                This program may be freely distributed for others evaluation as
  126.           long as no fee is charged, with the exception of modest disk, shipping
  127.           and handling charges.  Any person who uses this product agrees to the
  128.  
  129.  
  130.  
  131.                                          Page - 2
  132.  
  133.  
  134.  
  135.  
  136.  
  137.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  138.  
  139.  
  140.           terms of the Shareware, Copyright, and Disclaimer notices contained
  141.           herein.  If this system is distributed, only the original archive
  142.           distributed by J.M. Allen Creations should be used, and it should not
  143.           be modified in ANY WAY!  This will allow users who fear they may have
  144.           obtained a patched, or otherwise modified version of the program to
  145.           verify the integrity of the program by calling J.M. Allen Creations
  146.           with the archive checksum information.
  147.  
  148.                You MAY NOT disassemble, reverse engineer, hack, change, modify,
  149.           alter, mutate, refashion, vary, or catalyze any of these programs or
  150.           documentation in any way, manner shape or form.
  151.  
  152.           DISCLAIMER:
  153.  
  154.           Michael A. Hotz, nor J.M. Allen Creations, nor any person or entity
  155.           affiliated with either, will assume any responsibility for any
  156.           situation which occurs as a result, be it direct, or indirect, of the
  157.           use of any of these programs.  THE USER ASSUMES ALL RISK WHICH MAY BE
  158.           ASSOCIATED WITH THE USE OF THESE PROGRAMS.  There are no warrantees
  159.           whatsoever, expressed or implied, as to the usefulness or
  160.           effectiveness of this system for any particular purpose.  This
  161.           software is sold as is, and is not guaranteed to work on any
  162.           particular machine, or under any particular hardware or software
  163.           configuration.  All of the programs have been tested on my hardware
  164.           under numerous configurations to perform as described in this
  165.           documentation.  Use of this software in any way constitutes IMMEDIATE
  166.           acceptance of these terms by the user.
  167.  
  168.           ------------------  PRINDIR PROGRAM USE AND OPTIONS  -----------------
  169.  
  170.           INSTALLING PRINDIR:
  171.  
  172.                PRINDIR should be installed on a system running version 2.0 of
  173.           DOS or greater.  It should be installed at the command line, or in a
  174.           batch file, but should not be installed while you are shelled to DOS
  175.           from inside another program.  The program requires one of three
  176.           command line switches to be installed, or one to be released.  The
  177.           installation switches control what type of memory PRINDIR will use for
  178.           a buffer when redirecting to disk files.
  179.  
  180.           COMMAND LINE PARAMETERS:
  181.  
  182.           prindir /c
  183.  
  184.                Installing PRINDIR with the /c parameter will cause PRINDIR to
  185.           allocate 32k of CONVENTIONAL memory for redirection to disk files.
  186.  
  187.           prindir /x
  188.  
  189.                Installing PRINDIR with the /x parameter will cause PRINDIR to
  190.           allocate 32k of EXTENDED memory for redirection to disk files.  You
  191.           must have an XMM (Extended Memory Manager) such as HIMEM.SYS
  192.           installed, and sufficient extended memory in order to use extended
  193.           memory with PRINDIR.
  194.  
  195.  
  196.  
  197.                                          Page - 3
  198.  
  199.  
  200.  
  201.  
  202.  
  203.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  204.  
  205.  
  206.  
  207.           prindir /e
  208.  
  209.                Installing PRINDIR with the /e parameter will cause PRINDIR to
  210.           allocate 32k of EXPANDED memory for redirection to disk files.  You
  211.           must have an EMM (Expanded Memory Manager) and appropriate hardware
  212.           installed, and sufficient expanded memory available in order to use
  213.           expanded memory with PRINDIR.
  214.  
  215.           ORDER OF INSTALLATION FOR TSR PROGRAMS:
  216.  
  217.                The order of installation of TSR programs has been a subject of
  218.           some confusion in the industry.  This can be especially confusing when
  219.           two programs are installed for the same device to do different things.
  220.           While I certainly can't speak for all TSR programs, the majority of
  221.           properly written TSR programs will follow these basic guidelines.
  222.  
  223.                The easiest way to remember is to know that the last TSR program
  224.           installed will generally take control of the system before any others
  225.           installed before it.  This is because TSR programs function based on
  226.           their ability to intercept interrupts.  The last program to intercept
  227.           an interrupt is the first to receive control when that interrupt
  228.           occurs.  It is then the responsibility of that program to be sure any
  229.           other programs installed before it has an opportunity to receive that
  230.           same interrupt.  Interrupts are simply a way for a device to get the
  231.           attention of the system when they need it's services.  This way, the
  232.           system doesn't waste time asking or polling each device to see if it
  233.           needs to be serviced.  Under this scenario, an interrupt handler does
  234.           its processing, chaining to the next handler as required.
  235.  
  236.                Suppose you have a print spooler installed in your system, and
  237.           you want to be able to use PRINDIR without it interfering with your
  238.           spooler.  The procedure is simple.  Install PRINDIR last.  If PRINDIR
  239.           is installed last, it is first to receive control every time a
  240.           character is printed.  PRINDIR then evaluates it's current setup.  If
  241.           you are redirecting to a disk file, PRINDIR puts the byte in it's
  242.           internal buffer, and the spooler never knows about the byte.  If
  243.           PRINDIR is in invisible mode, PRINDIR will pass the data on untouched
  244.           to the next program, in this case, the print spooler, which then does
  245.           with the data what it is supposed to, and so on.
  246.  
  247.                In another situation, you may have a program installed to change
  248.           all printed data to upper case.  If PRINDIR is installed after this
  249.           program, and is set for invisible mode, printed data will be all
  250.           uppercase because PRINDIR passes the call untouched to the uppercase
  251.           program.  If PRINDIR is redirecting to disk file, the data redirected
  252.           to disk WILL NOT be uppercase because PRINDIR deals with the data
  253.           before the uppercase program gets a chance.
  254.  
  255.                While neither of the above scenarios are wrong, they do
  256.           demonstrate that the order of installation can be a key factor in
  257.           getting different programs to work together to ultimately produce the
  258.           results you want.  This logic may seem simple when PRINDIR is
  259.           redirecting to a file or the screen, but you are probably wondering
  260.  
  261.  
  262.  
  263.                                          Page - 4
  264.  
  265.  
  266.  
  267.  
  268.  
  269.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  270.  
  271.  
  272.           what happens when PRINDIR is redirecting to another LPT or COM port.
  273.           The answer becomes less clear, but a basic rule always applies.  In
  274.           all modes except invisible mode, the original call to the redirected
  275.           device is thrown away by PRINDIR, and the data is then directed to the
  276.           proper device by a new call.  PRINDIR does this automatically, and
  277.           none of the other devices or programs know what is going on.
  278.  
  279.                Since I said that was the rule, then we must have an exception,
  280.           which is this.  Setting the device destination the same as the
  281.           redirected device is functionally equivalent to invisible mode.
  282.  
  283.                Now for a quick quiz to test your understanding.  PRINDIR is
  284.           installed and is redirecting LPT1 to LPT3.  PRINDIR was installed
  285.           BEFORE cswitch, a fictional program which toggles upper case to lower
  286.           case and lower to upper on LPT1.  Suppose you are running a program
  287.           which is printing on LPT1.  Where would the data be printed, and what
  288.           will it look like?
  289.  
  290.                If you said the data will be printed on LPT3 you are right!  If
  291.           you said the printing will be case toggled you are even more right!
  292.           If you know this is because cswitch case toggled the data and then
  293.           passed it on to PRINDIR which redirected it to LPT3, you are all
  294.           right!  If you were wrong, and don't know why, you may want to read
  295.           this section again.  Remember that in this case, PRINDIR was installed
  296.           first, and cswitch last.  cswitch got control first when data was
  297.           printed, it intercepted and case toggled the data printed to LPT1, and
  298.           then sent it on to LPT1 which PRINDIR was intercepting, and printed it
  299.           on LPT3.
  300.  
  301.                Just for the record, no matter what the destination in this case,
  302.           the output would have been case toggled because cswitch was installed
  303.           last, and deals with the data first.
  304.  
  305.           UNLOADING OR RELEASING PRINDIR:
  306.  
  307.           To unload PRINDIR, run the program from the command line or a batch
  308.           file after it has been installed with the /u switch, and the program
  309.           will be released.  If one of the interrupts PRINDIR takes over while
  310.           it is installed is changed while it is resident, PRINDIR will not be
  311.           able to unload until the affected interrupt is restored.  If PRINDIR
  312.           cannot unload safely, it will display a message to this effect and
  313.           remain resident.  At this point you may want to unload the offending
  314.           program, and attempt to release PRINDIR again.  Any data in the disk
  315.           buffer will be written automatically before the program releases.
  316.  
  317.           PRINDIR POPUP PARAMETER MENU:
  318.  
  319.                The popup parameter menu is your interface with the PRINDIR
  320.           program.  From this small popup menu, you can set many different
  321.           parameters, and control just how PRINDIR works.  The following
  322.           paragraphs summarize the different configuration settings and
  323.           information displays.  The default keystroke to pop up PRINDIR
  324.           is ALT + P (Hold the ALT key and press P).
  325.  
  326.  
  327.  
  328.  
  329.                                          Page - 5
  330.  
  331.  
  332.  
  333.  
  334.  
  335.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  336.  
  337.  
  338.           STATUS BOX:
  339.  
  340.                The status box is located near the top of the Popup Parameter
  341.           Menu.  This box contains several lines of information which tell you
  342.           about the current configuration of PRINDIR.
  343.  
  344.           REDIRECTING:
  345.  
  346.                This field indicates which device PRINDIR is currently
  347.           redirecting.  Any output sent to this device will be intercepted by
  348.           PRINDIR, and redirected to the appropriate destination based on the
  349.           DESTINATION field.  PRINDIR defaults to redirect LPT1 when it is
  350.           installed.  You can very easily change this setting using the F1
  351.           through F7 keys on your keyboard or the PRINMOD program supplied with
  352.           PRINDIR.  When you press one of these keys, this field in the status
  353.           box will be updated instantly to reflect your changes.  This setting
  354.           will remain in effect until you change it again through the popup
  355.           parameter screen, or the PRINMOD program.
  356.  
  357.           DESTINATION:
  358.  
  359.                This field indicates which device PRINDIR is currently writing
  360.           redirected output to.  Any data written to the intercepted device is
  361.           intercepted by PRINDIR, and written to this destination device.
  362.           PRINDIR defaults to INVIS (invisible) when installed.  This means that
  363.           if PRINDIR is installed for LPT1, anything written to LPT1 will go
  364.           directly to LPT1 without PRINDIR intervention.  You can very easily
  365.           change this setting using the 1 through 7 at the top of your keyboard,
  366.           and the S , F, and I keys.  Each key will change the destination
  367.           device, and this field in the status box will be updated instantly to
  368.           reflect the current selection.  This setting will remain in effect
  369.           until you change it again through the popup parameter screen, or the
  370.           PRINMOD program.
  371.  
  372.           FILE NAME, PATH, AND REDIRECTION TO FILES:
  373.  
  374.                There are two menu choices which control the redirection files
  375.           PRINDIR uses.
  376.  
  377.                The P key will allow you to edit the file path field.
  378.                The N key will allow you to edit the file name field.
  379.  
  380.                The most important concept to grasp about editing these fields is
  381.           that PRINDIR simply adds them together when it attempts to write to a
  382.           file.  The following correct examples should help you:
  383.  
  384.           File Path = C:\
  385.           File Name = PRINDIR.DAT
  386.           Full File Path = C:\PRINDIR.DAT
  387.  
  388.           File Path = C:\SYSTEM\SCRNDUMP\
  389.           File Name = TODAY.DAT
  390.           Full File Path = C:\SYSTEM\SCRNDUMP\TODAY.DAT
  391.  
  392.  
  393.  
  394.  
  395.                                          Page - 6
  396.  
  397.  
  398.  
  399.  
  400.  
  401.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  402.  
  403.  
  404.           Now suppose we have these to examples:
  405.  
  406.           File Path = C:\TEST\
  407.           File Name = \JUNK.DAT
  408.           Full File Path = C:\TEST\\JUNK.DAT                (** WRONG! **)
  409.  
  410.           File Path = C:\STUFF
  411.           File Name = DIRDUMP.DAT
  412.           Full File Path = C:\STUFFDIRDUMP.DAT              (** WRONG! **)
  413.  
  414.           In the first wrong example, we have a backslash at the end of the path
  415.           as well as at the beginning of the file, creating a full path name
  416.           with a double backslash in the middle.  This won't produce the desired
  417.           results.
  418.  
  419.           In the second example, we have no backslash separating the file path
  420.           and the file name, so again, we don't get the desired results.
  421.  
  422.           You can feel safe that you will not loose data because PRINDIR will
  423.           never write over existing data.  If the destination file you have
  424.           chosen already exists, PRINDIR will simply append any further data to
  425.           the end of the file, leaving the original data untouched.  If the file
  426.           specified does not exist, PRINDIR will automatically create it.
  427.           PRINDIR automatically writes any data in it's buffers before the
  428.           parameter menu is activated and before the program is removed from
  429.           memory at the users request.  PRINDIR will also write any buffered
  430.           data after a default of 5 seconds pass with no new data being added to
  431.           the buffer.
  432.  
  433.           INVISIBLE MODE:
  434.  
  435.                When PRINDIR is in invisible mode, it appears transparent in that
  436.           it does not modify any data in any way.  Invisible mode allows PRINDIR
  437.           to remain in memory without disturbing any printed data, waiting for
  438.           your commands at any time.  You can set PRINDIR to invisible by using
  439.           the I key in the Popup Parameter Menu, or with the PRINMOD program.
  440.  
  441.           PRINDIR BYTE COUNT INDICATOR:
  442.  
  443.                This display is a five digit counter that can be seen in the
  444.           upper right corner of the screen when key T, Toggle Byte Display, is
  445.           set to on or +.  When the key is toggled to off, or -, the display
  446.           will not be seen.  The current status of the byte display is indicated
  447.           by a + (plus sign) or - (minus sign) beside the words 'Toggle Byte
  448.           Display' in the popup parameter menu.  The display shows the number of
  449.           bytes that are in the redirection buffer, and uses the same colors as
  450.           the parameter menu.
  451.  
  452.           DELETE CURRENT FILE:
  453.  
  454.                The D key will allow you to delete the file currently specified
  455.           in the File Path and File Name fields.  PRINDIR does not provide you
  456.           with an option to change you mind when this key is pressed.  The file
  457.           is deleted instantly.
  458.  
  459.  
  460.  
  461.                                          Page - 7
  462.  
  463.  
  464.  
  465.  
  466.  
  467.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  468.  
  469.  
  470.  
  471.           IMPORTANT NOTES:
  472.  
  473.                Always remember that PRINDIR will only intercept one device at
  474.           any one time.  Output to any other device will be untouched by
  475.           PRINDIR.
  476.  
  477.                PRINDIR does not do any fancy tap dancing with the video display.
  478.           If you pop PRINDIR up on a graphics display, it will pop up, but you
  479.           more than likely won't be able to see it.  You may even get garbage.
  480.           You can still set parameters by pressing the proper keys, but you
  481.           won't be able to see what you are doing.  Since there are so many
  482.           types of display adapters and video modes any more, adding the code
  483.           and logic to deal with graphics displays would waste more memory than
  484.           would be practical at this point in time.
  485.  
  486.                PRINDIR will automatically write any bytes in the disk buffer
  487.           before popup.  This occurs to prevent problems with parts of files
  488.           being printed to parts of other files when doing file name changes.
  489.  
  490.           ------------------  PRINMOD PROGRAM USE AND OPTIONS  -----------------
  491.  
  492.           PRINMOD PROGRAM OVERVIEW:
  493.  
  494.                PRINMOD is a separate program to support changing resident
  495.           PRINDIR parameters from batch files, or at the command line, or even
  496.           from within other programs.  PRINMOD will allow you to do this easily.
  497.           You simply run PRINMOD with the desired parameters.  The parameters
  498.           can be any number from the list below, in any combination.
  499.  
  500.           COMMAND LINE PARAMETERS:
  501.  
  502.                prinmod /lpt?       - Set destination to printer (? = 1-3)
  503.                prinmod /com?       - Set destination to com port (? = 1-4)
  504.                prinmod /scr        - Set destination to the screen
  505.                prinmod /fil        - Set destination to a disk file
  506.                prinmod /inv        - Set PRINDIR to invisible mode
  507.                prinmod /path=...   - Set the file path to ... (maximum 41 chars)
  508.                prinmod /name=...   - Set the file name to ... (maximum 41 chars)
  509.                prinmod /dump       - Force PRINDIR to flush its buffer ASAP
  510.                prinmod /color???   - Change menu and status color (see PRINCOL)
  511.                prinmod /key???     - Change pop up hot key (see PRINKEY)
  512.                prinmod /dis?       - Toggle byte display (? = 0 (off) or 1(on))
  513.                prinmod /cap?       - Change redirected device (?=1-7  see below)
  514.                prinmod /delay???   - Set flush delay timer ticks
  515.                                      (18.5 ticks = 1 second)
  516.  
  517.           The device numbers for /cap are as follows:
  518.  
  519.           1 = LPT1  2 = LPT2  3 = LPT3
  520.           4 = COM1  5 = COM2  6 = COM3  7 = COM4
  521.  
  522.                If you give an invalid argument, or PRINDIR is not installed, the
  523.           program will display a message indicating the situation.  Also
  524.  
  525.  
  526.  
  527.                                          Page - 8
  528.  
  529.  
  530.  
  531.  
  532.  
  533.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  534.  
  535.  
  536.           remember that PRINMOD only changes the parameters in the resident copy
  537.           of PRINDIR.  Each time PRINDIR is installed, it starts out its
  538.           resident life with the defaults.  Many users who install PRINDIR in
  539.           their autoexec.bat file run the PRINMOD program immediately after the
  540.           PRINDIR program to set the desired parameters.
  541.  
  542.           NOTES FOR PROGRAMMERS:
  543.  
  544.                You may easily incorporate support for changing resident PRINDIR
  545.           settings in your software through interrupt 7Ch.  You can accomplish
  546.           this through standard software interrupt calls to PRINDIR.  You simply
  547.           put the desired command in the specified registers, and issue the
  548.           software interrupt 7Ch.
  549.  
  550.           (Please note that the interrupt PRINDIR uses has changed to 7Ch in
  551.           version 8.02 from 7Ah in previous version to eliminate a conflict with
  552.           the Novell Netware IPX/SPX module which also uses interrupt 7Ah.)
  553.  
  554.                AH = 00h  -    Set output to INVISIBLE MODE
  555.                AH = 01h  -    Set output to LPT-1
  556.                AH = 02h  -    Set output to LPT-2
  557.                AH = 03h  -    Set output to LPT-3
  558.                AH = 04h  -    Set output to COM-1
  559.                AH = 05h  -    Set output to COM-2
  560.                AH = 06h  -    Set output to COM-3
  561.                AH = 07h  -    Set Output to COM-4
  562.                AH = 08h  -    Set Output to SCRN
  563.                AH = 09h  -    Set Output to FILE
  564.                AH = 0Ah  -    Change File Path
  565.                               ES:DI = Far pointer to new file path
  566.                               CX = Length of new path
  567.                AH = 0Bh  -    Change File Name
  568.                               ES:DI = Far pointer to new file name
  569.                               CX = Length of new name
  570.                AH = 0Ch  -    Set Redirected Device
  571.                               AL = 1,2,3,4,5,6, or 7 (see above)
  572.                AH = 0Dh  -    Force buffer to dump ASAP
  573.                AH = 0Eh  -    Set Display Color
  574.                               AL = new color (see PRINCOL)
  575.                AH = 0Fh  -    Set Popup Hotkey
  576.                               AL = scancode (see PRINKEY)
  577.                AH = 10h  -    Toggle Byte Display
  578.                               AL = 1 or 0 (on or off)
  579.  
  580.                AH = 11h  -    Change buffer flush delay
  581.                               AL = timer ticks (18.5 ticks = 1 second)
  582.  
  583.           Before issuing any of these commands, you should insure that version
  584.           8.02 of PRINDIR is installed.  You can do this by first obtaining the
  585.           interrupt vector for interrupt 7Ch using DOS int 21h function 35h, or
  586.           with a compatible function in your high level language such as
  587.           getvect() in C.  If you add two to the offset of the vector, you
  588.           should be able to read the null terminated string "PRINDIR 8.02."  If
  589.           the interrupt vector for PRINDIR points to 3C85:08B0, then you should
  590.  
  591.  
  592.  
  593.                                          Page - 9
  594.  
  595.  
  596.  
  597.  
  598.  
  599.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  600.  
  601.  
  602.           be able to find "PRINDIR 8.02" at 3C85:08B2.  Again, this is a null
  603.           terminated string, so the C string functions will work correctly,
  604.           however, make sure you understand which memory model you are in, and
  605.           what type of pointers you are dealing with, NEAR or FAR!!!!  A pointer
  606.           to this address would obviously be a FAR pointer!  If you are using a
  607.           small memory model in C, you may have to check for "PRINDIR 8.02" the
  608.           hard way:
  609.  
  610.           NOTE: The following example is based on syntax and functions available
  611.           in the Borland line of C compilers, and thus may require modification
  612.           to work with different compilers from other vendors.
  613.  
  614.           #include <stdio.h>
  615.           #include <dos.h>
  616.  
  617.           char      far *prindir;
  618.  
  619.           void main(void)
  620.           {
  621.           prindir = (char far *)getvect(0x7C);
  622.           if ( (prindir[2] == 'P') &&
  623.                (prindir[3] == 'R') &&
  624.                (prindir[4] == 'I') &&
  625.                (prindir[5] == 'N') &&
  626.                (prindir[6] == 'D') &&
  627.                (prindir[7] == 'I') &&
  628.                (prindir[8] == 'R') &&
  629.                (prindir[9] == ' ') &&
  630.                (prindir[10] == '8') &&
  631.                (prindir[11] == '.') &&
  632.                (prindir[12] == '0') &&
  633.                (prindir[13] == '0') ) printf("PRINDIR is installed!\n");
  634.           else printf("PRINDIR is not resident!\n");
  635.           }
  636.  
  637.                If you do not find "PRINDIR 8.02, then PRINDIR is not installed,
  638.           or a version other than 8.02 is resident.  In either case, you should
  639.           not attempt these function calls, as the system may hang.
  640.  
  641.                Finally, once you have determined through the method listed above
  642.           that version 8.02 of PRINDIR is loaded, you may call these functions
  643.           as listed above.  They return 0 in the ax register when successful,
  644.           and any other value indicates some type of error.  If you specify an
  645.           invalid function number in AH (ie: greater than 11h) PRINDIR will
  646.           simply ignore it and return an error code.
  647.  
  648.           ---------------------------  PRINKEY PROGRAM  ------------------------
  649.  
  650.           PRINKEY PROGRAM:
  651.  
  652.                The PRINKEY program will allow you to press the key you wish to
  653.           use to popup the PRINDIR Popup Parameter Menu.  The program will then
  654.           print the number you must use with the PRINMOD program using the /key
  655.           option.  Remember that this does not change the keystroke permanently,
  656.  
  657.  
  658.  
  659.                                         Page - 10
  660.  
  661.  
  662.  
  663.  
  664.  
  665.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  666.  
  667.  
  668.           only while PRINDIR is installed, or until it is changed again with
  669.           PRINMOD.  While you must use the ALT key in conjunction with the
  670.           hotkey to popup PRINDIR, you should NOT use the ALT key when running
  671.           this program.
  672.  
  673.           ---------------------------  PRINCOL PROGRAM  ------------------------
  674.  
  675.           PRINCOL PROGRAM:
  676.  
  677.                The PRINCOL program will display all of the possible values for
  678.           the /color option of the PRINMOD program.  Remember that this does not
  679.           change the color permanently, only while PRINDIR is installed, or
  680.           until it is changed again with PRINMOD.  Please note that on some
  681.           displays such as EGA and VGA, other programs may turn off the
  682.           intensity bit of the text mode display.  If you choose a color greater
  683.           than 127, you may get the blinking low intensity color instead of the
  684.           non-blinking high intensity color.  It is generally recommended that
  685.           you stick with the lower 127 colors.  PRINDIR always resets the
  686.           intensity bit when the Popup Parameter Menu is activated, but does not
  687.           monitor the intensity bit while the popup menu is not active.
  688.  
  689.           -------------------------  TECHNICAL SUPPORT  ------------------------
  690.  
  691.           FINAL NOTES AND WHERE TO GET HELP:
  692.  
  693.                I have put a great deal of work into this system, and I believe
  694.           PRINDIR is one of the best, safest, most versatile, and most reliable
  695.           programs of this nature that is available.  If, however, you are
  696.           experiencing any problems, please don't hesitate to contact me.  I
  697.           answer all customer support questions personally, and would be glad to
  698.           help you with any problems you may be having.
  699.  
  700.                You may contact me at my full time place of employment from 9:00
  701.           a.m. until 5:00 p.m Monday through Friday at (419) 334-5204.  IF YOU
  702.           CALL MY OFFICE, PLEASE ASK FOR ME BY NAME!  I AM THE ONLY ONE WHERE I
  703.           WORK WHO CAN PROVIDE ANY INFORMATION ON MY SHAREWARE!  After hours and
  704.           on weekends, you may call (419) 262-8322.  This is a private mobile
  705.           phone, and if it is not answered, will forward to a voice mailbox
  706.           which I check as often as possible.  If you leave a message on here, I
  707.           will usually get back to you the same day.  You may also send me
  708.           Compuserve Mail at USER ID: 72200,1312, GEnie Mail at MAHOTZ, or
  709.           Internet mail at "72200.1312@compuserve.com".  I normally try to check
  710.           these places daily.
  711.  
  712.                Many of the features in PRINDIR have been added at the request of
  713.           other users.  If you have ideas, suggestions, questions, comments, or
  714.           criticism, please contact me so a solution can be worked out.
  715.  
  716.                If you have trouble and can't get things going, be sure you have
  717.           some basic info before you contact me, such as what type of system you
  718.           are using, what type of memory buffer you are using, what types of
  719.           programs you have resident, what programs you are using, and when the
  720.           problems occur.  With this information I can generally determine what
  721.           the problem is, and find a way to get PRINDIR to work for you!
  722.  
  723.  
  724.  
  725.                                         Page - 11
  726.  
  727.  
  728.  
  729.  
  730.  
  731.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  732.  
  733.  
  734.  
  735.           KNOWN CONFLICTS AND OTHER INFORMATION:
  736.  
  737.                PRINDIR cannot redirect programs which bypass the BIOS and access
  738.           hardware directly.  PRINDIR intercepts all devices at the BIOS level,
  739.           but there is no easy way to intercept direct hardware writes.
  740.  
  741.           PRINDIR has been tested under MS-DOS Versions 3.30, 4.01, AND 5.00
  742.  
  743.           PRINDIR should have no problem with the loadhigh statement available
  744.           under MS-DOS 5.0, and similar statements provided by other memory
  745.           managers such as QEMM.  PRINDIR requires 8892 bytes of conventional
  746.           memory when installed using EMS or XMS for the disk redirection
  747.           buffer, and 40736 bytes of conventional memory when installed using
  748.           conventional memory for the disk redirection buffer.  These are the
  749.           exact number of bytes for this version, and do NOT include the
  750.           environment space allocated to all programs by DOS which changes from
  751.           machine to machine.
  752.  
  753.  
  754.           SITE LICENSE INFORMATION:
  755.  
  756.                PRINDIR can be site licenced by using the following guidelines.
  757.           The minimum registration cost is $20.00.  This allows the use of
  758.           PRINDIR on up to 20 machines at any single location.  The charge for
  759.           each additional machine is $1.00 in increments of $10.00
  760.  
  761.           1   -  20 Machine   =  $20.00
  762.           21  -  30 Machines  =  $30.00
  763.           31  -  40 Machines  =  $40.00
  764.           41  -  50 Machines  =  $50.00
  765.  
  766.           etc...  etc...  etc...
  767.  
  768.           Site license upgrades follow the same logic of single license
  769.           upgrades, including the same logic as above.
  770.  
  771.           1   -  20 Machines  = $5.00
  772.           21  -  30 Machines  = $7.50
  773.           31  -  40 Machines  = $10.00
  774.           41  -  50 Machines  = $12.50
  775.  
  776.           etc...  etc...  etc...
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.                                         Page - 12
  792.  
  793.  
  794.  
  795.  
  796.  
  797.                 JMAC PRINDIR Version 8.02 Users Guide and Reference Manual
  798.  
  799.  
  800.                      PRINDIR Version 8.02 Official Registration Form
  801.  
  802.           Please mail this form to:
  803.  
  804.           J.M. Allen Creations
  805.           115 Lynn Street
  806.           Fremont, Ohio  43420
  807.  
  808.           Please make any check or money orders payable to J.M. Allen Creations.
  809.  
  810.           First time registration is $20.00.  Registered users of any previous
  811.           version of PRINDIR may upgrade to PRINDIR version 8.02 for only $5.00.
  812.           No charge to upgrade from version 8.01 to version 8.02
  813.  
  814.           Name _________________________________________________________________
  815.  
  816.           Title ________________________________________________________________
  817.  
  818.           Company Name _________________________________________________________
  819.  
  820.           Address ______________________________________________________________
  821.  
  822.           City _____________________     State ___________     Zip _____________
  823.  
  824.           Daytime Phone _______________________     Fax ________________________
  825.  
  826.           Compuserve Mail _____________________     GEnie Mail _________________
  827.  
  828.  
  829.           _____ New Registrations at $20.00 Each         = $__________
  830.  
  831.           _____ Upgrade Registrations at $5.00 Each      = $__________
  832.  
  833.           New Site Licence for use on _____ machines     = $__________
  834.  
  835.           Upgrade Site Licence for use on _____ machines = $__________
  836.  
  837.                                          Total Cost      = $__________
  838.  
  839.  
  840.           [ ] I have enclosed a check or money order for the total
  841.  
  842.           [ ] Charge the credit card below for the total (signature required)
  843.  
  844.           [ ] I registered by phone with a credit card (signature required)
  845.  
  846.  
  847.           CREDIT CARD NUMBER (13 or 16 digits)                     EXPIRES
  848.           VISA/MASTERCARD ONLY!
  849.  
  850.           __ __ __ __ - __ __ __ __ - __ __ __ __ - __ __ __ __    __ __ / __ __
  851.  
  852.  
  853.           AUTHORIZED SIGNATURE _______________________________________
  854.  
  855.  
  856.  
  857.                                         Page - 13
  858.  
  859.